package com.lmabbe.tenant.objects.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Set;

/**
 * 认证客户端VO
 *
 * @author lmabbe
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "认证客户端")
public class OauthClientVO implements Serializable {

    /**
     * 客户端ID
     */
    @ApiModelProperty(value = "客户端ID")
    private Long clientId;

    /**
     * 客户端key
     */
    @ApiModelProperty(value = "客户端key")
    private String clientKey;

    /**
     * 客户端密匙
     */
    @ApiModelProperty(value = "客户端密匙")
    private String clientSecret;

    /**
     * 可访问资源列表
     */
    @ApiModelProperty(value = "可访问资源列表")
    private Set<String> resourceIds;

    /**
     * 授权方式列表
     */
    @ApiModelProperty(value = "授权方式列表")
    private Set<String> grantTypes;

    /**
     * 访问域列表
     */
    @ApiModelProperty(value = "访问域列表")
    private Set<String> scopes;

    /**
     * 授权之后回调地址
     */
    @ApiModelProperty(value = "授权之后回调地址")
    private String redirectUris;

    /**
     * 是否是平台参数
     */
    @ApiModelProperty(value = "是否是平台参数")
    private Boolean platform;

}